package cn.lesper.utils;

import java.sql.Connection;
import java.sql.SQLException;

//事务处理
//基础事务处理
public class TransactionUtils extends ExtendBase{

    Connection conn = getConnection();

    /**
     *开启事务
     * @throws SQLException
     */
    public void start() throws SQLException{
        if(conn!=null){
            try {
                if(conn.getAutoCommit()){
                    conn.setAutoCommit(false);
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }

    /**
     * 提交事务
     */
    public void commit() throws SQLException{
        if(conn!=null){
            try {
                if(!conn.getAutoCommit()){
                    conn.commit();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }

    /**
     * 回滚事务
     */
    public void rollback() throws SQLException{
        if(conn!=null){
            try {
                if(!conn.getAutoCommit()){
                    conn.rollback();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }

}
